
<ng-container [ngSwitch]="item.formType">
  <ng-container *ngSwitchCase="'textInput'">
    <ng-container *ngIf="item.tags && item.tags.length > 0">
      <div class="service-type-bg" *ngIf="!item.noShowTag">
        <ng-container *ngFor="let tag of item.tags">
          <div class="unchecked" [ngClass]="{'checked': tag.checked}" appDebounceClick (debounceClick)="getServicePrice(item, tag)">
            {{tag.label}}</div>
        </ng-container>
      </div>
      <!-- 遮住滚动条 -->
      <hr style="margin-top: -0.1rem;height: 0.1rem;border-top: solid 0.03rem #E8EAED" *ngIf="!item.noShowTag">
      <p style="padding: 1.25rem;color: #575A61;
    font-size: 0.88rem;" *ngIf="item.tagTips && item.tagTips.length > 0 ">{{item.tagTips}}</p>
    <div *ngIf="item.showLabel !== false" class="post-item post-item-div"  [ngClass]="{'border-none': item.lines === 'none'}"  [ngStyle]="item.cssStyle | styleFilter" style="margin-top:-0.1rem;">
      
    
        <ion-label [ngStyle]="item.labelCssStyle | styleFilter" *ngIf="item.label && item.label !==''"  [innerHTML]="item.label | parseStyle"></ion-label>
        <!-- 文本类型 -->
        <ion-input id="servicePrice" *ngIf="!item.textType || item.textType !== 'number'"
          [ngStyle]="item.valueCssStyle | styleFilter" type="text" [maxlength]="item.maxLength"
          [(ngModel)]="item.value" [attr.placeholder]="item.placeHolder" 
          (ionChange)="changeValue($event, item)"
          [readonly]="item.disabled" appDebounceClick (debounceClick)="inputClick(item)">
        </ion-input>
        <!-- 数字类型 -->
        <ion-input id="servicePrice" *ngIf="item.textType === 'number'" type="number"
          onkeyup="value=value.replace(/[^\d\.]/g,'')" onafterpaste="if((value===''))execCommand('undo')"
          onKeypress="return(/[\d\.]/.test(String.fromCharCode(event.keyCode)))"
          [ngStyle]="item.valueCssStyle | styleFilter" (ionChange)="changeValue($event, item)"
          [(ngModel)]="item.value" [maxlength]="item.maxLength" [attr.placeholder]="item.placeHolder"
           [readonly]="item.disabled" appDebounceClick (debounceClick)="inputClick(item)">
        </ion-input>
        <!-- 行尾文字 -->
        <span class="jointEnd" *ngIf="item.extra" [ngStyle]="item.extraCssStyle | styleFilter">{{item.extra}}</span>
        <ng-container *ngIf="item.endIcon && item.endIcon.indexOf('http'> -1); else elseTemplateLocalIcon">
          <img class="icon-map" [ngStyle]="item.endIconCssStyle | styleFilter"  width="8%" src="{{item.endIcon}}"
          appDebounceClick (debounceClick)="endIconClick(item)" alt="">
        </ng-container>
        <ng-template #elseTemplateLocalIcon>
          <img class="icon-map" *ngIf="item.endIcon" width="8%" src="assets/icon/{{item.endIcon}}"
          appDebounceClick (debounceClick)="endIconClick(item)" alt="">  
        </ng-template>
        
        
        <img class="icon-map" *ngIf="item.delete && item.value" width="8%" src="assets/img/close.png"
          alt="" appDebounceClick (debounceClick)="deleteValue(item)">
        <!-- 租金单位 -->
        <ng-container
          *ngIf="item.subHtmlObj && item.subHtmlObj.length === 1 && item.subHtmlObj[0].formType === 'singleColumnSelect'">
          <input type="text" (focus)="showActionSheet(item.subHtmlObj[0])"
            class="displayno">
          <span class="single-picker"
            appDebounceClick (debounceClick)="showActionSheet(item.subHtmlObj[0])">{{item.subHtmlObj[0].showValue}}
            <i class="right-img" [ngStyle]="item.subHtmlObj[0].imgCssStyle | styleFilter"></i>
          </span>
        </ng-container>
      </div>
    
    </ng-container>
    
    <ng-container *ngIf="!item.tags || item.tags.length === 0">
      <div class="post-item post-item-div"  [ngClass]="{'border-none': item.lines === 'none', 'error-border' :errorChecked(item)}" [ngStyle]="item.cssStyle | styleFilter" >
        
        <ion-label *ngIf="item.label && item.label !==''" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML]="item.label | parseStyle"></ion-label>
        <!-- 文本类型 -->
        <ion-input *ngIf="!item.textType || item.textType !== 'number'"
          [ngStyle]="item.valueCssStyle | styleFilter"  type="{{item.textType === 'password' ? 'password':'text'}}"[maxlength]="item.maxLength"
          [(ngModel)]="item.value" [attr.placeholder]="item.placeHolder" 
          [readonly]="item.disabled" appDebounceClick (debounceClick)="inputClick(item)"
          (ionChange)="changeValue($event, item)">
        </ion-input>
        <!-- 数字类型 -->
        <ion-input *ngIf="item.textType === 'number'" type="number" onkeyup="value=value.replace(/[^\d\.]/g,'')"
          onafterpaste="if((value===''))execCommand('undo')"
          onKeypress="return(/[\d\.]/.test(String.fromCharCode(event.keyCode)))"
          [ngStyle]="item.valueCssStyle | styleFilter" (ionChange)="changeValue($event, item)"
          [(ngModel)]="item.value" [maxlength]="item.maxLength" [attr.placeholder]="item.placeHolder"
          [readonly]="item.disabled" appDebounceClick (debounceClick)="inputClick(item)" (ionBlur)="ionBlur($event, it)">
        </ion-input>
        <!-- 行尾文字 -->
        <ng-container *ngIf="item.extra === '验证码'; else elseTemplateCode">
          <!-- 获取验证码 -->
          <span class="jointEnd" style="color: #252629;" *ngIf="item.time && item.time ===-1"
            appDebounceClick (debounceClick)="getMSCode(superItem,item)">获取验证码</span>
  
          <span class="jointEnd" *ngIf="item.time && item.time > -1" [ngClass]="{'lightgrey':item.time>-1}">({{item.time}})重新获取 </span>
  
        </ng-container>
        <ng-template #elseTemplateCode>
          <span class="jointEnd" *ngIf="item.extra" [ngStyle]="item.extraCssStyle | styleFilter">{{item.extra}}</span>
        </ng-template>
  
        <span *ngIf="item.textType === 'password' || item.isPassword === 'password'" class="eye" appDebounceClick (debounceClick)="eyeShow(item)" [ngClass]="{'eyeshow':item.textType !== 'password'}"></span>

        <ng-container *ngIf="item.endIcon && item.endIcon.indexOf('http') > -1; else elseTemplateLocalIcon">
          <img class="icon-map" [ngStyle]="item.endIconCssStyle | styleFilter"  width="8%" src="{{item.endIcon}}"
          appDebounceClick (debounceClick)="endIconClick(item)" alt="">
        </ng-container>
        <ng-template #elseTemplateLocalIcon>
          <img class="icon-map" *ngIf="item.endIcon" width="8%" src="assets/icon/{{item.endIcon}}"
          appDebounceClick (debounceClick)="endIconClick(item)" alt="">  
        </ng-template>
        <img class="icon-map" *ngIf="item.delete && item.value" width="8%" src="assets/img/close.png"
          alt="" appDebounceClick (debounceClick)="deleteValue(item)">
        <!-- 租金单位 -->
        <ng-container
          *ngIf="item.subHtmlObj && item.subHtmlObj.length === 1 && item.subHtmlObj[0].formType === 'singleColumnSelect'">
          <input type="text" (focus)="showActionSheet(item.subHtmlObj[0])"
            class="displayno">
          <span class="single-picker"
            appDebounceClick (debounceClick)="showActionSheet(item.subHtmlObj[0])">{{item.subHtmlObj[0].showValue}}
            <i class="right-img" [ngStyle]="item.subHtmlObj[0].imgCssStyle | styleFilter"></i>
          </span>
        </ng-container>
         <!-- 品牌选择 -->
         <ng-container
         *ngIf="item.subHtmlObj && item.subHtmlObj.length === 1 && item.subHtmlObj[0].formType === 'switchButtonFW_3'">
         <span class="single-picker" [ngStyle]="item.subHtmlObj[0].extraCssStyle | styleFilter"
           appDebounceClick (debounceClick)="openModalMoreEditInfo(item)">{{item.subHtmlObj[0].extra}}
           <img src="{{item.subHtmlObj[0].endIcon}}" alt="" [ngStyle]="item.subHtmlObj[0].endIconCssStyle | styleFilter">
           
         </span>
       </ng-container>
        <!-- 产品分类 -->
        <ng-container
          *ngIf="item.subHtmlObj && item.subHtmlObj.length === 1 && item.subHtmlObj[0].formType === 'singleSelect3'">
         
          <span class="single-picker" [ngStyle]="item.subHtmlObj[0].extraCssStyle | styleFilter"
            appDebounceClick (debounceClick)="openModalMoreEditInfo(item)">{{item.subHtmlObj[0].extra}}
            <img src="{{item.subHtmlObj[0].endIcon}}" alt="" [ngStyle]="item.subHtmlObj[0].endIconCssStyle | styleFilter">
          </span>
        </ng-container>
      </div>
      
    </ng-container>
  </ng-container>

  <ng-container *ngSwitchCase="'textInputLJ'">
    <div class="lj-post-item" [ngStyle]="item.cssStyle | styleFilter">
      <p class="lj-post-item-label" *ngIf="item.label && item.label.length > 0"[ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle">
      </p>
      <p class="lj-input-bg" [ngStyle]="item.valueCssStyle | styleFilter" [ngClass]="{'none-border': item.lines ==='none'}">
        <!-- 文本类型 -->
        <ion-input *ngIf="!item.textType || item.textType !== 'number'"
          [ngStyle]="item.valueCssStyle | styleFilter" type="text" [maxlength]="item.maxLength"
          [(ngModel)]="item.value" [attr.placeholder]="item.placeHolder" 
          (ionChange)="changeValue($event, item)"
          [readonly]="item.disabled" appDebounceClick (debounceClick)="inputClick(item)">
        </ion-input>
        <!-- 数字类型 -->
        <ion-input [ngStyle]="item.valueCssStyle | styleFilter" *ngIf="item.textType === 'number'" type="number"
          onkeyup="value=value.replace(/[^\d\.]/g,'')" onafterpaste="if((value===''))execCommand('undo')"
          onKeypress="return(/[\d\.]/.test(String.fromCharCode(event.keyCode)))"
          (ionChange)="changeValue($event, item)" [(ngModel)]="item.value" [maxlength]="item.maxLength"
          [attr.placeholder]="item.placeHolder" [readonly]="item.disabled"
          appDebounceClick (debounceClick)="inputClick(item)">
        </ion-input>
        <!-- 行尾文字 -->
        <span class="jointEnd" *ngIf="item.extra">{{item.extra}}</span>
        <img class="icon-map" *ngIf="item.endIcon" width="8%" src="assets/icon/{{item.endIcon}}"
          alt="">
        <img class="icon-map" *ngIf="item.delete && item.value" width="8%" src="assets/img/close.png"
          alt="" appDebounceClick (debounceClick)="deleteValue(item)">
        <!-- 租金单位 -->
        <ng-container *ngIf="item.subHtmlObj && item.subHtmlObj.length === 1">
          <input type="text" (focus)="showActionSheet(item.subHtmlObj[0])"
            class="displayno">
          <span class="single-picker-lj"
            appDebounceClick (debounceClick)="showActionSheet(item.subHtmlObj[0])">{{item.subHtmlObj[0].showValue}}
            <i class="lj-right-icon"></i>
          </span>
        </ng-container>
      </p>
    </div>
  </ng-container>
<!-- LJ oneline -->
<ng-container *ngSwitchCase="'textInputLJOneLine'">

  <div class="lj-post-item" [ngStyle]="item.cssStyle | styleFilter">
    <p class="lj-post-item-label lj-post-item-label-oneline">
      <span style="white-space: nowrap;" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></span>

      <span class="lj-input-bg lj-input-bg-oneline" [ngStyle]="item.valueNCssStyle | styleFilter">
        <!-- 文本类型 -->
        <ion-input *ngIf="!item.textType || item.textType !== 'number'" type="text" [maxlength]="item.maxLength"
          [(ngModel)]="item.value" [attr.placeholder]="item.placeHolder" 
          [readonly]="item.disabled" appDebounceClick (debounceClick)="inputClick(item)" [ngStyle]="item.valueCssStyle | styleFilter"
          (ionChange)="changeValue($event, item)">
        </ion-input >
        <!-- 数字类型 -->
        <ion-input *ngIf="item.textType === 'number'" type="number" onkeyup="value=value.replace(/[^\d\.]/g,'')"
          onafterpaste="if((value===''))execCommand('undo')"
          onKeypress="return(/[\d\.]/.test(String.fromCharCode(event.keyCode)))"
          (ionChange)="changeValue($event, item)" [(ngModel)]="item.value" [maxlength]="item.maxLength"
          [attr.placeholder]="item.placeHolder"  [readonly]="item.disabled"
          appDebounceClick (debounceClick)="inputClick(item)" [ngStyle]="item.valueCssStyle | styleFilter">
        </ion-input>
        <!-- 行尾文字 -->
        <span class="jointEnd" *ngIf="item.extra" [ngStyle]="item.extraCssStyle | styleFilter">{{item.extra}}</span>
        <img class="icon-map" *ngIf="item.endIcon" width="8%" src="assets/icon/{{item.endIcon}}"
          alt="">
        <img class="icon-map" *ngIf="item.delete && item.value" width="8%" src="assets/img/close.png"
          alt="" appDebounceClick (debounceClick)="deleteValue(item)">
        <!-- 租金单位 -->
        <ng-container *ngIf="item.subHtmlObj && item.subHtmlObj.length === 1">
          <input type="text" (focus)="showActionSheet(item.subHtmlObj[0])"
            class="displayno">
          <span class="single-picker"
            appDebounceClick (debounceClick)="showActionSheet(item.subHtmlObj[0])">{{item.subHtmlObj[0].showValue}}
            <i class="lj-right-icon"></i>
          </span>
        </ng-container>
      </span>
    </p>

  </div>
</ng-container>
<!-- 左边图标 输入框-->
<ng-container *ngSwitchCase="'textInput_border'">
  <div class="lj-post-item textInput_border" [ngStyle]="item.cssStyle|styleFilter">
    <p class="lj-post-item-label" *ngIf="item.label && item.label.length > 0">
      {{item.label}}
    </p>

    <p class="lj-picker-bg">
      <i class="lj-picker-left-icon"
        [ngClass]="{'lj-picker-left-address-icon': item.leftIcon === 'address'}"></i>
      <ion-input *ngIf="!item.textType || item.textType !== 'number'" type="text" [maxlength]="item.maxLength"
        [(ngModel)]="item.value" [ngStyle]="item.valueCssStyle | styleFilter"
        [attr.placeholder]="item.placeHolder"  [readonly]="item.disabled"
        appDebounceClick (debounceClick)="inputClick(item)"
        (ionChange)="changeValue($event, item)">
      </ion-input>
      <!-- 数字类型 -->
      <ion-input *ngIf="item.textType === 'number'" type="number" onkeyup="value=value.replace(/[^\d\.]/g,'')"
        onafterpaste="if((value===''))execCommand('undo')"
        onKeypress="return(/[\d\.]/.test(String.fromCharCode(event.keyCode)))"
        [ngStyle]="item.valueCssStyle | styleFilter" (ionChange)="changeValue($event, item)"
        [(ngModel)]="item.value" [maxlength]="item.maxLength" [attr.placeholder]="item.placeHolder"
         [readonly]="item.disabled" appDebounceClick (debounceClick)="inputClick(item)">
      </ion-input>
    </p>

  </div>

</ng-container>
<ng-container *ngSwitchCase="'textInputJoin'">
  <div class="join-form-item-bg" [ngStyle]="item.cssStyle | styleFilter">
    <p class="join-label" [ngStyle]="item.labelCssStyle | styleFilter" *ngIf="item.label && item.label !==''">
      {{item.label}}</p>

    <span class="join-sep" *ngIf="item.label && item.label.length > 0" [ngStyle]="item.sepCssStyle | styleFilter"></span>

    <!-- 文本类型 [ngStyle]="item.valueCssStyle | styleFilter" -->
    <ion-input *ngIf="!item.textType || item.textType !== 'number'" type="text" [maxlength]="item.maxLength"
      [(ngModel)]="item.value" [attr.placeholder]="item.placeHolder" 
      [readonly]="item.disabled" appDebounceClick (debounceClick)="inputClick(item)"
      class="design-input design-select-checked {{item.formKey}}" id="{{item.formKey}}-{{hintId}}"
      (ionChange)="changeValue($event, item)">
    </ion-input>
    <!-- 数字类型 -->
    <ion-input *ngIf="item.textType === 'number'" type="number" onkeyup="value=value.replace(/[^\d\.]/g,'')"
      onafterpaste="if((value===''))execCommand('undo')"
      onKeypress="return(/[\d\.]/.test(String.fromCharCode(event.keyCode)))"
      (ionChange)="changeValue($event, item)" [(ngModel)]="item.value" [maxlength]="item.maxLength"
      [attr.placeholder]="item.placeHolder"  [readonly]="item.disabled"
      appDebounceClick (debounceClick)="inputClick(item)" class="design-input design-select-checked {{item.formKey}}"
      id="{{item.formKey}}-{{hintId}}">
    </ion-input>
    <!-- 行尾文字 -->
    <span class="design-lightgrey" style="flex-shrink: 0;" *ngIf="item.extra">{{item.extra}}</span>
    <ng-container *ngIf="item.endIcon && item.endIcon.indexOf('http') > -1; else elseTemplateLocalIcon">
      <img class="icon-map" style="flex-shrink: 0;" [ngStyle]="item.endIconCssStyle | styleFilter "  *ngIf="item.endIcon" width="8%"
      src="{{item.endIcon}}" appDebounceClick (debounceClick)="endIconClick(item)" alt="">
    </ng-container>
    <ng-template #elseTemplateLocalIcon>
      <img class="icon-map" style="flex-shrink: 0;" [ngStyle]="item.endIconCssStyle | styleFilter "  *ngIf="item.endIcon" width="8%"
      src="assets/icon/{{item.endIcon}}" appDebounceClick (debounceClick)="endIconClick(item)" alt="">   
    </ng-template>   
    <img class="icon-map" style="flex-shrink: 0;" *ngIf="item.delete && item.value" width="8%"
      src="assets/img/close.png" alt="" appDebounceClick (debounceClick)="deleteValue(item)">
    <!-- 租金单位 -->
    <ng-container
      *ngIf="item.subHtmlObj && item.subHtmlObj.length === 1 && item.subHtmlObj[0].formType === 'singleColumnSelect'">
      <input type="text" (focus)="showActionSheet(item.subHtmlObj[0])"
         class="displayno">
      <span class="single-picker" appDebounceClick (debounceClick)="showActionSheet(item.subHtmlObj[0])">{{item.subHtmlObj[0].showValue}}
        <i class="right-img" [ngStyle]="item.subHtmlObj[0].imgCssStyle | styleFilter"></i>
      </span>
    </ng-container>
  </div>
</ng-container>
<ng-container *ngSwitchCase="'textInputDesign'">
  <div class="design-form-item-bg" [ngStyle]="item.cssStyle | styleFilter">
    <p class="design-label" [ngStyle]="item.labelCssStyle | styleFilter" *ngIf="item.label && item.label !==''">
      {{item.label}}</p>
    <!-- 文本类型 -->
    <ion-input *ngIf="!item.textType || item.textType !== 'number'" [ngStyle]="item.valueCssStyle | styleFilter"
      type="text" [maxlength]="item.maxLength" [(ngModel)]="item.value" [attr.placeholder]="item.placeHolder"
       [readonly]="item.disabled" appDebounceClick (debounceClick)="inputClick(item)"
      class="design-input design-select-checked"
      (ionChange)="changeValue($event, item)">
    </ion-input>
    <!-- 数字类型 -->
    <ion-input *ngIf="item.textType === 'number'" type="number" onkeyup="value=value.replace(/[^\d\.]/g,'')"
      onafterpaste="if((value===''))execCommand('undo')"
      onKeypress="return(/[\d\.]/.test(String.fromCharCode(event.keyCode)))"
      [ngStyle]="item.valueCssStyle | styleFilter" (ionChange)="changeValue($event, item)"
      [(ngModel)]="item.value" [maxlength]="item.maxLength" [attr.placeholder]="item.placeHolder"
       [readonly]="item.disabled" appDebounceClick (debounceClick)="inputClick(item)"
      class="design-input design-select-checked">
    </ion-input>
    <!-- 行尾文字 -->
    <span class="design-lightgrey" style="flex-shrink: 0;" [ngStyle]="item.extraCssStyle | styleFilter" *ngIf="item.extra">{{item.extra}}</span>
    <img class="icon-map" style="flex-shrink: 0;" *ngIf="item.endIcon" width="8%"
      src="assets/icon/{{item.endIcon}}" appDebounceClick (debounceClick)="endIconClick(item)" alt="">
    <img class="icon-map" style="flex-shrink: 0;" *ngIf="item.delete && item.value" width="8%"
      src="assets/img/close.png" alt="" appDebounceClick (debounceClick)="deleteValue(item)">
    <!-- 租金单位 -->
    <ng-container
      *ngIf="item.subHtmlObj && item.subHtmlObj.length === 1 && item.subHtmlObj[0].formType === 'singleColumnSelect'">
      <input type="text" (focus)="showActionSheet(item.subHtmlObj[0])"
        class="displayno">
      <span class="single-picker" appDebounceClick (debounceClick)="showActionSheet(item.subHtmlObj[0])">{{item.subHtmlObj[0].showValue}}
        <i class="right-img" [ngStyle]="item.subHtmlObj[0].imgCssStyle | styleFilter"></i>
      </span>
    </ng-container>
  </div>
</ng-container>


<!-- 多行备注 -->
<ng-container *ngSwitchCase="'textArea'">
    <div [ngStyle]="item.showValueCssStyle | styleFilter ">
      <p  class="text-area-label" *ngIf="item.label && item.label !==''" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML]="item.label | parseStyle"></p>

      <ng-container *ngIf="!item.hasBorder">
        <ion-textarea id="{{item.formKey}}" class="textarea" [ngStyle]="item.cssStyle|styleFilter" rows="6" cols="10"
           [maxlength]="item.maxLength" [attr.placeholder]="item.placeHolder"
          (ionChange)="clearItemSpaces($event,item)" [(ngModel)]="item.value" [readonly]="item.disabled"
          appDebounceClick (debounceClick)="inputClick(item)">
        </ion-textarea>
        <p *ngIf="item.maxLength" class="tr">{{item.value? item.value.length || 0 : 0}}/{{item.maxLength}}</p>
      </ng-container>

      <ng-container *ngIf="item.hasBorder">
        <div class="text-area-border" [ngStyle]="item.background | styleFilter">
          <ion-textarea id="{{item.formKey}}" class="textarea" [ngStyle]="item.cssStyle|styleFilter"
            (ionChange)="clearItemSpaces($event,item)" rows="2" cols="10" 
            [maxlength]="item.maxLength" [attr.placeholder]="item.placeHolder" [(ngModel)]="item.value"
            [readonly]="item.disabled" appDebounceClick (debounceClick)="inputClick(item)">
          </ion-textarea>
          <p *ngIf="!item.maxLength && item.defValue" [ngStyle]="item.defValueCssStyle | styleFilter " class="def-value-btn" appDebounceClick (debounceClick)="setItemDefValue(item)">重置默认</p>
          <p *ngIf="item.maxLength" class="tr"><span *ngIf="item.defValue"  class="def-value-btn" [ngStyle]="item.defValueCssStyle | styleFilter " appDebounceClick (debounceClick)="setItemDefValue(item)">重置默认</span>{{item.value? item.value.length || 0 : 0}}/{{item.maxLength}}</p>
        </div>
      </ng-container>
    </div>
  
  </ng-container>

  <!-- 多行备注 有label-->
  <ng-container *ngSwitchCase="'textAreaLines'">
    <div class="textAreaLines text-area-lines" [ngStyle]="item.cssStyle | styleFilter">

      <p  class="text-area-label" *ngIf="item.label && item.label !==''" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML]="item.label | parseStyle"></p>
      <textarea id="{{item.formKey}}" [ngStyle]="item.valueCssStyle | styleFilter" class="text-area" [ngClass]="{'text-area-75': item.max == 75,'text-area-88': item.max == 88,'text-area-100': item.max == 100,'text-area-138': item.max == 138}"  [rows]="item.showValue" 
       [maxlength]="item.maxLength" [attr.placeholder]="item.placeHolder"
      (ngModelChange)="textAreaClearItemSpaces($event,item)" [(ngModel)]="item.value" [readonly]="item.disabled"
      appDebounceClick (debounceClick)="inputClick(item)">
    </textarea>
    <p *ngIf="!item.maxLength && item.defValue" [ngStyle]="item.defValueCssStyle | styleFilter " class="def-value-btn" appDebounceClick (debounceClick)="setItemDefValue(item)">重置默认</p>
    <p *ngIf="item.maxLength" class="tr"[ngStyle]="item.extraCssStyle | styleFilter "><span *ngIf="item.defValue"  class="def-value-btn" [ngStyle]="item.defValueCssStyle | styleFilter " appDebounceClick (debounceClick)="setItemDefValue(item)">重置默认</span>{{item.value? item.value.length || 0 : 0}}/{{item.maxLength}}</p>
    </div>
  </ng-container>

   <!-- 多行备注 LJ-->
   <ng-container *ngSwitchCase="'textAreaLJ'">
    <div [ngStyle]=" item.showValueCssStyle | styleFilter">

    <ng-container *ngIf="!item.hasBorder">
      <div *ngIf="item.label && item.label.length > 0" class="lj-post-item">
        <p class="lj-post-item-label" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></p>
      </div>
      <ion-textarea id="{{item.formKey}}-{{hintId}}" class="textarea" (ionChange)="clearItemSpaces($event,item)" rows="6"
        cols="10"  [maxlength]="item.maxLength"
        [attr.placeholder]="item.placeHolder" [(ngModel)]="item.value" [readonly]="item.disabled"
        appDebounceClick (debounceClick)="inputClick(item)">
      </ion-textarea>
      <p *ngIf="item.maxLength && item.maxLength > 1" class="tr">{{item.value? item.value.length || 0 :
        0}}/{{item.maxLength}}</p>
    </ng-container>

    <ng-container *ngIf="item.hasBorder">
      <div *ngIf="item.label && item.label.length > 0" class="lj-post-item">
        <p class="lj-post-item-label" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></p>
      </div>
      <div class="text-area-border-lj" [ngStyle]="item.cssStyle | styleFilter">
        <div [ngStyle]="item.valueCssStyle | styleFilter">
          <ion-textarea id="{{item.formKey}}-{{hintId}}" class="textarea" (ionChange)="clearItemSpaces($event,item)" rows="6"
          cols="10" [maxlength]="item.maxLength"
          [attr.placeholder]="item.placeHolder" [(ngModel)]="item.value" [readonly]="item.disabled"
          appDebounceClick (debounceClick)="inputClick(item)">
        </ion-textarea>
        </div>
        <p *ngIf="!item.maxLength && item.defValue" [ngStyle]="item.defValueCssStyle | styleFilter " class="def-value-btn" appDebounceClick (debounceClick)="setItemDefValue(item)">重置默认</p>
        <p *ngIf="item.maxLength && item.maxLength > 1"[ngStyle]="item.valueNCssStyle | styleFilter" class="tr"><span *ngIf="item.defValue"  class="def-value-btn" [ngStyle]="item.defValueCssStyle | styleFilter " appDebounceClick (debounceClick)="setItemDefValue(item)">重置默认</span>{{item.value? item.value.length || 0 :
          0}}/{{item.maxLength}}</p>
      </div>
    </ng-container>
    </div>
  </ng-container>
  
  <!-- btn 切换 -->
  <ng-container *ngSwitchCase="'switchButton'">
    <div class="post-item post-item-div"  [ngClass]="{'border-none': item.lines === 'none', 'error-border' :errorChecked(item)}" [ngStyle]="item.cssStyle | styleFilter" >
      <ion-label style="max-width: none;" [innerHTML] ="item.label | parseStyle"></ion-label>

      <label for="toggle{{item.formKey}}" class="segment-block" *ngIf="!item.hasBorder">
        <span class="border-left" appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButton',0)"
          [ngClass]="{'nochecked':item.value !== item.itemList[0].value,'checked':item.value === item.itemList[0].value }">{{item.itemList[0].label}}</span>
        <span class="border-right" appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButton',1)"
          [ngClass]="{'checked':item.value === item.itemList[1].value, 'nochecked':item.value !== item.itemList[1].value}">{{item.itemList[1].label}}</span>
      </label>
      <div  class="segment-block-border" *ngIf="item.hasBorder">
        <span class="item-border" appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButton',0)"
          [ngClass]="{'item-border-nochecked':item.value !== item.itemList[0].value,'item-border-checked':item.value === item.itemList[0].value }">{{item.itemList[0].label}}</span>
        <span class="item-border" appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButton',1)"
          [ngClass]="{'item-border-checked':item.value === item.itemList[1].value, 'item-border-nochecked':item.value !== item.itemList[1].value}">{{item.itemList[1].label}}</span>
      </div>
    </div>
  </ng-container>
  <!-- btn 切换  LJ-->
  <ng-container *ngSwitchCase="'switchButtonLJ'">
    <div class="lj-post-item" [ngClass]="{'js-post-item':item?.appType==='JS'}" [ngStyle]="item?.cssStyle | styleFilter">
      <div class="lj-post-item-label" [ngStyle]="item?.labelCssStyle | styleFilter">
        <span class="" style="flex-shrink: 0;width: 28%;" [ngStyle]="item?.extraCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></span>
        <img src="{{item.leftIcon}}" *ngIf="item.leftIcon" class="left-icon" [ngStyle]="item.leftIconCssStyle | styleFilter " appDebounceClick (debounceClick)="openPage(item.link)">
        <div class="right-item" *ngIf="item.itemList && item.itemList.length > 0" [ngStyle]="item?.valueCssStyle | styleFilter">
          <span class="sw-lj-item" *ngFor="let it of item.itemList; let a = index"
            appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButton',a)" [ngStyle]="item?.itemListCssStyle | styleFilter"><i
              [ngClass]="{'nochecked':!it.check ,'checked':it.check,'displayno':item.disabled}"></i>{{it.label}}</span>
        </div>
      </div>
    </div>
  </ng-container>  

  <!-- 转让出租出售 -->
  <ng-container *ngSwitchCase="'switchButtonLJ_icon'">
    <div class="switchButtonLJ_icon lj-post-item" [ngStyle]="item.cssStyle | styleFilter">
      <p class="lj-post-item-label" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></p>
      <div class="switchButtonLJ_icon_item_bg" *ngIf="item.itemList && item.itemList.length > 0" [ngStyle]="item.valueCssStyle | styleFilter">
        <div class="switchButtonLJ_icon_item"
          [ngClass]="{'switchButtonLJ_icon_item_1': item.itemList.length === 2, 'switchButtonLJ_icon_item_s':it.check,'switchButtonLJ_icon_item_no_icon':!it.icon || it.icon.length == 0}"
          *ngFor="let it of item.itemList; let a = index" appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButton',a)">

          <p class="switchButtonLJ_icon_item_label">{{it.label}}</p>
          <p class="switchButtonLJ_icon_item_tag_label">{{it.tagLabel}}</p>
          <img *ngIf="it.icon && it.icon.length > 0" class="switchButtonLJ_icon_item_icon" src="{{it.icon}}"
            alt="">
        </div>
      </div>

    </div>
  </ng-container>
  <!-- 转让出租出售 -->
  <ng-container *ngSwitchCase="'switchButtonJoin'">
    <div class="switchButtonJoin switch-button-join-bg" [ngStyle]="item.cssStyle | styleFilter">

      <div class="switchButtonJoin_item_bg" *ngIf="item.itemList && item.itemList.length > 0" [ngStyle]="item.background | styleFilter">
        <div class="switchButtonJoin_item" [ngStyle]="item.placeholderCssStyle | styleFilter"
          [ngClass]="{ 'switchButtonJoin_item_s':it.check}"
          *ngFor="let it of item.itemList; let a = index" appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButton',a)">

          <img *ngIf="it.icon && it.icon.length > 0" class="switchButtonJoin_item_icon"  [ngStyle]="item.iconCssStyle | styleFilter" src="{{it.icon}}" alt="">
          <p class="switchButtonJoin_item_label" 
            [ngStyle]="item.labelCssStyle | styleFilter">
            <i  *ngIf="it.label"[innerHTML]="it.label | parseStyle"></i>
            <i  *ngIf="it.tagLabel" [innerHTML]="it.tagLabel | parseStyle"></i>

          </p>
          <img src="{{it.check?item.iconOn:item.icon}}" alt="" class="switchButtonJoin_item_icon_check" [ngStyle]="item.leftIconCssStyle | styleFilter"
            >
        </div>
      </div>

    </div>

  </ng-container>
  
  <ng-container *ngSwitchCase="'switchButtonKD'">
    <div class="sw-kd-bg" [ngStyle]="item.cssStyle | styleFilter">
      <p class="sw-kd-label" [ngStyle]="item.labelCssStyle | styleFilter" *ngIf="item.label && item.label.length > 0" [innerHTML] = "item.label | parseStyle"></p>

      <div class="sw-kd-item-bg"   *ngIf="item.itemList && item.itemList.length > 0" [ngStyle]="item.itemListBgCssStyle | styleFilter">
        <ng-container *ngFor="let it of item.itemList; let a = index">
          <div  class="sw-kd-item" [ngClass]="{'sw-kd-item-check': it.check}" [ngStyle]=" (it.check ? item.itemListCheckedCssStyle : item.itemListCssStyle) | styleFilter"
          appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButtonKD',a)">


          <img *ngIf="it.icon" class="sw-kd-item-icon" src="{{it.icon}} " [ngStyle]="item.itemListIconCssStyle | styleFilter" 
          alt="">
          <p [ngStyle]="(it.check ? item.valueCssStyle : item.placeholderCssStyle)| styleFilter" class="sw-kd-item-label" [innerHTML]="it.label | parseStyle"></p>

          <p [ngStyle]="  (it.check ? item.valueNCssStyle : item.placeholderNCssStyle) | styleFilter"  *ngIf="it.valueN || it.unit" class="sw-kd-value-n-bg">
            <span [ngClass]="{'sw-kd-value-n': !item.valueNCssStyle}" *ngIf="it.valueN"><i  [ngClass]="{'sw-kd-unit': !item.valueNCssStyle}"  *ngIf="it.unit">{{it.unit}}</i>{{it.valueN}}</span>
          </p>
          
       </div>  
        </ng-container>
      </div>      
        

    </div>
  </ng-container>

  <ng-container *ngSwitchCase="'switchButtonFW_3'">
    <div class="switchButtonFW lj-post-item" [ngStyle]="item.cssStyle | styleFilter">
      <p class="lj-post-item-label lj-post-item-label-fw" [ngStyle]="item.labelCssStyle | styleFilter" *ngIf="item.label && item.label.length > 0" [innerHTML] = "item.label | parseStyle"></p>
      <ng-container *ngIf="item.tips && item.tips.length > 0">
        <div class="singleSelect3-4-tips" *ngIf="item.tips" id="switchButtonFW_3_tips" [ngStyle]="item.tipsBgCssStyle | styleFilter">
          <img *ngIf="item.leftIcon" src="{{item.leftIcon}}" alt="" class="close-tips" [ngStyle]="item.leftIconCssStyle | styleFilter ">
          <p class="tips" [ngStyle]="item.tipsCssStyle | styleFilter">{{item.tips}}</p>
          <img *ngIf="item.endIcon" src="{{item.endIcon}}" alt="" class="close-tips" appDebounceClick (debounceClick)="closeTips('switchButtonFW_3_tips','switchButtonFW_item_bg')"  [ngStyle]="item.endIconCssStyle | styleFilter">
        </div>
      </ng-container>
      <!-- 搜索 -->
      <ng-container *ngIf="item.showSearchModal">
        
          <ion-toolbar style="--background:#fff;">
            <form action="javascript: return true;" style="margin-left: -1rem;margin-right: -1rem;">
              <ion-searchbar #searchBarLocal (keypress)="searchLocal($event,item)" inputmode="" class="search-bar"
                placeholder={{item.placeHolder}} autocomplete="off" onInput="if(value.length>20)value=value.slice(0,20)"
                (ionBlur)="ionBlurLocal()" [(ngModel)]="item.keyword" mode="ios" (ionFocus)="focusInputLocal(item)"
                (ionChange)="searchChangeLocal($event,item)" [ngModelOptions]="{standalone: true}" style="--background:#F5F5F5"> </ion-searchbar>
            </form>
    
          </ion-toolbar>
      </ng-container>
      
      <div class="switchButtonFW_item_bg"   *ngIf="item.itemList && item.itemList.length > 0" [ngStyle]="item.itemListBgCssStyle | styleFilter">
        <ng-container *ngFor="let it of item.itemList; let a = index">
          
        <div class="switchButtonFW_item_outer_bg" [ngStyle]="item.sepCssStyle | styleFilter">
          <div  class=" switchButtonFW_item_3 "
          [ngClass]="{'switchButtonFW_item_max_2':item.maxSize === 2,'switchButtonFW_item_max_1':item.maxSize === 1,'switchButtonFW_item_max_4':item.maxSize === 4}" [ngStyle]=" (it.check ? item.itemListCheckedCssStyle : item.itemListCssStyle) | styleFilter"
          appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButton',a)">
          <div [ngStyle]="item.background | styleFilter" class="item-list-bg">
            <img *ngIf="item.endIcon && !item.tips" class="item-icon-right" src="{{item.endIcon}} " [ngStyle]="item.endIconCssStyle | styleFilter" 
            alt="">
            <img *ngIf="it.icon" class="item-icon" [ngClass]="{'grayscale': !it.check}" src="{{it.icon}} " [ngStyle]="item.itemListIconCssStyle | styleFilter" 
            alt="">
            
            <p [ngStyle]="  (it.check ? item.valueNCssStyle : item.placeholderNCssStyle) | styleFilter"  *ngIf="it.valueN || it.unit" class="value-n-bg">
              <span [ngClass]="{'unit': !item.valueNCssStyle}" [ngStyle]="item.extraCssStyle | styleFilter" *ngIf="it.unit">{{it.unit}}</span>
              <span [ngClass]="{'value-n': !item.valueNCssStyle}" *ngIf="it.valueN">{{it.valueN}}</span>
            </p>
            <p *ngIf="it.tagLabel" [ngStyle]="(it.check ? item.labelTagCheckCssStyle : item.labelTagCssStyle)| styleFilter" class="switchButtonFW_item_label switchButtonFW_item_label_3" [innerHTML]="it.tagLabel | parseStyle"></p>

            <p  *ngIf="it.label" [ngStyle]="(it.check ? item.valueCssStyle : item.placeholderCssStyle)| styleFilter" class="switchButtonFW_item_label switchButtonFW_item_label_3" [innerHTML]="it.label | parseStyle"></p>
          </div>

          </div>
          <div class="triangle-down" [ngClass]="{'displayno': !(it.check && item.allowCropper)}"></div>  
        </div>
      </ng-container>
        
        
      </div>
      

    </div>
  </ng-container>
  <!-- 通用选择项目 可以输入 -->
  <ng-container *ngSwitchCase="'switchButtonFW'">
    <div class="switchButtonFW lj-post-item" [ngStyle]="item.cssStyle | styleFilter">
      <p class="lj-post-item-label lj-post-item-label-fw" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle">
        
      </p>
      <div class="switchButtonFW_item_bg" *ngIf="item.itemList && item.itemList.length > 0">
        <!-- 服务大类 -->
        <ng-container *ngIf="item.itemList[0].icon; else elseNoIcon">
          <div class="switchButtonFW_item switchButtonFW_item_3"
          [ngClass]="{'switchButtonFW_item_s':it.check}"
          *ngFor="let it of item.itemList; let a = index" appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButton',a)">
          <img src="{{it.icon}}" alt=""  class="switchButtonFW_item_icon">
          <p [ngStyle]="item.valueCssStyle | styleFilter" class="switchButtonFW_item_label switchButtonFW_item_label_3">{{it.label}}</p>

        </div>
        </ng-container>

        <ng-template #elseNoIcon>
          <div class="switchButtonFW_item" 
          [ngClass]="{'switchButtonFW_item_s':it.check}"
          *ngFor="let it of item.itemList; let a = index" appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButton',a)"  >

          <ng-container
            *ngIf="a === 0 && item.subHtmlObj && item.subHtmlObj.length == 1 && item.subHtmlObj[0].formType == 'textInput'; else normalTemp">
            <!-- 输入值 -->
            <!-- 文本类型 -->
            <ion-input
              *ngIf="it.check && !item.subHtmlObj[0].textType || item.subHtmlObj[0].textType !== 'number'"
              [ngStyle]="item.subHtmlObj[0].valueCssStyle | styleFilter" class="switchButtonFW_input" type="text"
              [maxlength]="item.subHtmlObj[0].maxLength" [(ngModel)]="item.subHtmlObj[0].value"
              [attr.placeholder]="item.subHtmlObj[0].placeHolder" 
              [readonly]="item.subHtmlObj[0].disabled" #fwInput
              (ionChange)="changeValue($event, item.subHtmlObj[0])">
            </ion-input>
            <!-- 数字类型 -->
            <ion-input *ngIf="it.check && item.subHtmlObj[0].textType === 'number'"
              [ngStyle]="item.subHtmlObj[0].valueCssStyle | styleFilter" type="number" #fwInput
              class="switchButtonFW_input" onkeyup="value=value.replace(/[^\d\.]/g,'')"
              onafterpaste="if((value===''))execCommand('undo')"
              onKeypress="return(/[\d\.]/.test(String.fromCharCode(event.keyCode)))"
              (ionChange)="changeValue($event, item.subHtmlObj[0])" [(ngModel)]="item.subHtmlObj[0].value"
              [maxlength]="item.subHtmlObj[0].maxLength" [attr.placeholder]="item.subHtmlObj[0].placeHolder"
              [readonly]="item.subHtmlObj[0].disabled">
            </ion-input>
            <p *ngIf="!it.check" [ngStyle]="item.valueCssStyle | styleFilter" class="switchButtonFW_item_label">
              {{it.label}}</p>
          </ng-container>
          <ng-template #normalTemp>
            <p [ngStyle]="item.valueCssStyle | styleFilter" class="switchButtonFW_item_label">{{it.label}}</p>

          </ng-template>


        </div>
        </ng-template>
        
       
      </div>

    </div>
  </ng-container>

   <!-- 是否满意 -->
   <ng-container *ngSwitchCase="'switchButtonMark'">
    
    <div class="switchButtonMark mark-bg" [ngStyle]="item.cssStyle | styleFilter">
      
      <ng-container  *ngIf="item.itemList && item.itemList.length > 0">
        <div class="mark-item" [ngClass]="{'mark-item-checked': it.check}"

          *ngFor="let it of item.itemList; let a = index" appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButton',a)">
          <img *ngIf="it.check" class="mark-icon" src="{{it.iconOn}}"
          alt="">
          <img *ngIf="!it.check" class="mark-icon" src="{{it.icon}}"
          alt="">
          <p class="mark-item-label">{{it.label}}</p>
          
          
        </div>
      </ng-container>

    </div>
   </ng-container>

   <ng-container *ngSwitchCase="'switchButtonMarkTag'">
    
      <div class="mark-tag-bg" [ngStyle]="item?.cssStyle | styleFilter">
          <p *ngIf="item.label && it.label.length > 0" class="mark-tag-label" [ngStyle]="item.labelCssStyle | styleFilter"  [innerHTML] = "item.label | parseStyle"></p>
          <div class="mark-tag-item-bg" *ngIf="item.itemList && item.itemList.length > 0">
            <span class="mark-tag-item" [ngStyle]="item?.valueCssStyle | styleFilter" [ngClass]="{'mark-tag-item-checked': i.check}" *ngFor="let i of item.itemList; let a = index"
              appDebounceClick (debounceClick)="changeItemobjValidator(item,'switchButton',a)">{{i.label}}</span>
          </div>
        
      </div>
    
  </ng-container>
   <!-- btn 切换  系统样式-->
  <ng-container *ngSwitchCase="'switchButtonSystem'">
    <div class="toggle-item switchButtonSystem" [ngStyle]="item?.cssStyle | styleFilter">
      <span class="toggle-label" [ngStyle]="item?.labelCssStyle | styleFilter"  [innerHTML] = "item.label | parseStyle"></span>
      <ion-toggle [(ngModel)]="item.showValue" (ionChange)="switchButtonSystem(item)"
      [ngModelOptions]="{standalone: true}" [ngStyle]="item?.valueCssStyle | styleFilter"></ion-toggle>
    </div>
  </ng-container>

  <ng-container *ngSwitchCase="'passwordType'">
    <div class="pay-password passwordType">
      <ion-input (ionBlur)="passWordIonBlur(item)" (ionFocus)="passWordIonFocus(item)" type="tel" maxlength="6"
        class="real-ipt" onkeyup="value=value.replace(/[^\d\.]/g,'')"
        onafterpaste="if((value===''))execCommand('undo')"
        onKeypress="return(/[\d\.]/.test(String.fromCharCode(event.keyCode)))"
        [ngStyle]="item.valueCssStyle | styleFilter" (ionChange)="changeValue($event, item)"
        [(ngModel)]="item.value" [attr.placeholder]="item.placeHolder" 
        [readonly]="item.disabled" appDebounceClick (debounceClick)="inputClick(item)"> </ion-input>

      <div class="surface-ipt">

        <p class="empty" *ngIf="item.value.length === 0">
          <img *ngIf="item.onFocus && item.value.length === 0"
            src="https://t.alipayobjects.com/images/rmsweb/T1nYJhXalXXXXXXXXX.gif">
        </p>
        <p class="has-value" *ngIf="item.value.length >= 1">.</p>

        <p class="empty" *ngIf="item.value.length < 2">
          <img *ngIf="item.onFocus && item.value.length === 1"
            src="https://t.alipayobjects.com/images/rmsweb/T1nYJhXalXXXXXXXXX.gif">
        </p>
        <p class="has-value" *ngIf="item.value.length >= 2">.</p>

        <p class="empty" *ngIf="item.value.length < 3">
          <img *ngIf="item.onFocus && item.value.length === 2"
            src="https://t.alipayobjects.com/images/rmsweb/T1nYJhXalXXXXXXXXX.gif">
        </p>
        <p class="has-value" *ngIf="item.value.length >= 3">.</p>

        <p class="empty" *ngIf="item.value.length < 4">
          <img *ngIf="item.onFocus && item.value.length === 3"
            src="https://t.alipayobjects.com/images/rmsweb/T1nYJhXalXXXXXXXXX.gif">
        </p>
        <p class="has-value" *ngIf="item.value.length >= 4">.</p>

        <p class="empty" *ngIf="item.value.length < 5">
          <img *ngIf="item.onFocus && item.value.length === 4"
            src="https://t.alipayobjects.com/images/rmsweb/T1nYJhXalXXXXXXXXX.gif">
        </p>
        <p class="has-value" *ngIf="item.value.length >= 5">.</p>

        <p class="empty" *ngIf="item.value.length < 6">
          <img *ngIf="item.onFocus && item.value.length === 5"
            src="https://t.alipayobjects.com/images/rmsweb/T1nYJhXalXXXXXXXXX.gif">
        </p>
        <p class="has-value" *ngIf="item.value.length >= 6">.</p>

      </div>
    </div>

  </ng-container>  

  <!-- 行业单选 -->
  <ng-container *ngSwitchCase="'pickerSelect'">
    <div class="post-item post-item-div"  [ngClass]="{'border-none': item.lines === 'none' ,'error-border' :errorChecked(item)}" [ngStyle]="item.cssStyle | styleFilter" >
      <ion-label *ngIf="item.label && item.label.length > 0" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></ion-label>
      <span appDebounceClick (debounceClick)="clickOnPickerSelect(item)" class="input">
        <span [className]="(item.value && !item.disabled) ? 'select-checked' : 'lightgrey'" [ngStyle]="item.valueCssStyle | styleFilter">{{ item.showValue
          }}</span>
      </span>
      <i class="detail-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i>
    </div>
  </ng-container>
   <!-- 行业单选 LJ-->
   <ng-container *ngSwitchCase="'pickerSelectLJ'">
    <div class="lj-post-item">
      <p class="lj-post-item-label" *ngIf="item.label && item.label.length> 0" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle">
      </p>

      <p class="lj-picker-bg">
        <!-- <span Picker [disabled]="item.disabled" appDebounceClick (debounceClick)="clickOnPickerSelect(item)" [data]="item.data"
          [ngModel]="item.value" [cascade]="true" 
          (ngModelChange)="pickerSelect($event,item)" class="input" style="width: 100%;
    display: flex;
    align-items: center;"> -->
    <span  appDebounceClick (debounceClick)="clickOnPickerSelect(item)" 
     class="input" style="width: 100%;display: flex;align-items: center;">
          <span [className]="(item.value && !item.disabled) ? 'select-checked' : 'lightgrey'"><i
              class="lj-picker-left-icon"
              [ngClass]="{'lj-picker-left-address-icon': item.leftIcon === 'address'}"></i><i
              class="lj-item-value" [ngStyle]="item.valueCssStyle | styleFilter">{{item.showValue}}</i><i *ngIf="item.del && item.value"
              class="lj-picker-right-del" appDebounceClick (debounceClick)="deleteValue(item)"></i><i class="lj-right-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i></span>
        </span>
      </p>
    </div>
  </ng-container>

  <!-- 免费设计 省市区三级 -->
  <ng-container *ngSwitchCase="'pickerSelectDesign'">
    <div class="design-form-item-bg" [ngStyle]="item.cssStyle | styleFilter">
      <p class="design-label" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></p>
      <span  appDebounceClick (debounceClick)="clickOnPickerSelect(item)"  class="design-input">
        <span [className]="(item.value && !item.disabled) ? 'design-select-checked' : 'design-lightgrey'" [ngStyle]="item.valueCssStyle | styleFilter">{{
          item.showValue}}</span>
      </span>
      <i class="design-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i>
    </div>
  </ng-container>

   <!-- 面试时间 -->
   <ng-container *ngSwitchCase="'pickerSelectDate'">
    <div class="post-item post-item-div"  [ngStyle]="item.cssStyle | styleFilter" [ngClass]="{'border-none': item.lines === 'none'}">
      <ion-label *ngIf="item.label && item.label.length > 0" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></ion-label>
      <span   appDebounceClick (debounceClick)="clickOnPickerSelect(item)"  class="input">
        <span [className]="(item.value && item.value.length > 0 && !item.disabled) ? 'select-checked' : 'lightgrey'" [ngStyle]="item.valueCssStyle | styleFilter">{{ item.showValue
          }}</span>
      </span>
      <i class="design-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i>
    </div>
  </ng-container>
  <ng-container *ngSwitchCase="'pickerSelectJoin'">
    <div class="join-form-item-bg" [ngStyle]="item.cssStyle | styleFilter" appDebounceClick (debounceClick)="clickOnPickerSelect(item)">
      <p class="join-label" [ngStyle]="item.labelCssStyle | styleFilter" *ngIf="item.label && item.label !==''" [innerHTML] = "item.label | parseStyle">
        </p>

      <span class="join-sep" [ngStyle]="item.sepCssStyle | styleFilter"></span>
      <span appDebounceClick (debounceClick)="clickOnPickerSelect(item)"  class="design-input">
        
        <span class="palce-hoder-join" *ngIf="!(item.value && !item.disabled)"
          [ngStyle]="item.placeholderCssStyle | styleFilter">{{item.showValue}}</span>
        <span class="value-join" *ngIf="(item.value && !item.disabled)"
          [ngStyle]="item.valueCssStyle | styleFilter" [innerHTML]="item.showValue | parseStyle"></span>
      </span>

      <img class="end-icon" [ngStyle]="item.endIconCssStyle | styleFilter" *ngIf="item.endIcon && item.endIcon.length > 0" src="{{item.endIcon}}" alt="">
    </div>
  </ng-container>

  <!-- 省市区三级 直接提交-->
  <ng-container *ngSwitchCase="'pickerSelectBtn'">
    <div class="design-form-item-bg" [ngStyle]="item.cssStyle | styleFilter">
      
      <span  appDebounceClick (debounceClick)="clickOnPickerSelect(item,$event)"  class="design-input">
        <span >{{item.label}}</span>
      </span>
      
    </div>
    
  </ng-container>
  <!-- 广告位选择 LJ-->
  <ng-container *ngSwitchCase="'pickerSelectSepTwo'">
    <div class="lj-post-item" [ngStyle]="item.cssStyle | styleFilter">
      <p class="lj-post-item-label" *ngIf="item.label && item.label.length> 0" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle">

      </p>
    
      <div class="lj-picker-two-bg lj-picker-bg" [ngStyle]="item.valueCssStyle | styleFilter">
        <p *ngIf="item.extra && item.extra.length > 0" [ngStyle]="item.valueNCssStyle | styleFilter">{{item.extra}}</p>
        <p class="lj-picker-bg">
          <span Picker [disabled]="item.disabled" appDebounceClick (debounceClick)="clickOnPickerSelect(item)" [data]="item.data"
            [ngModel]="item.formKey1" [ngModelOptions]="{standalone: true}" [cascade]="true" 
            (ngModelChange)="pickerSelectTwo($event,item,1)" class="input" style="width: 100%;display: flex;align-items: center;">
            <span [className]="item.value1 ? 'select-checked' : 'lightgrey'"><i
                class="lj-item-value">{{item.showValue1}}</i><i class="detail-icon"></i></span>
          </span>

        </p>
        <span class="lj-picker-two-center" [ngStyle]="item.sepCssStyle | styleFilter"></span>
        <p class="lj-picker-bg" > 
          <span Picker [disabled]="item.disabled2" appDebounceClick (debounceClick)="clickOnPickerSelect(item)" [data]="item.data2"
            [ngModel]="item.value" [cascade]="true" 
            (ngModelChange)="pickerSelectTwo($event,item)" class="input" style="width: 100%;display: flex;align-items: center;">
            <span [className]="item.value  ? 'select-checked' : 'lightgrey'"><i
                class="lj-item-value" [ngStyle]="item.showValueCssStyle | styleFilter">{{item.showValue}}</i><i class="detail-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i></span>
          </span>

        </p>

      </div>
  
    </div>

  </ng-container>

  <!-- 商户入驻 省市2级 pickerSelectTwoLine-->
  <ng-container *ngSwitchCase="'pickerSelectTwoLine'">

    <div class="edit-m-s-bg" [ngStyle]="item.cssStyle | styleFilter" appDebounceClick (debounceClick)="clickOnPickerSelect(item)">
      <p class="label"  [ngStyle]="item.labelCssStyle | styleFilter" >{{item.label}}<i class="detail-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i></p>

      <span  appDebounceClick (debounceClick)="clickOnPickerSelect(item)"  class="design-input">

        <span class="palce-hoder" *ngIf="!(item.value && item.value.length> 0)" [ngStyle]="item.placeholderCssStyle | styleFilter" >{{item.placeHolder}}</span>
        <span class="value" *ngIf="item.value && item.value.length> 0" [ngStyle]="item.valueCssStyle | styleFilter"  [innerHTML]="item.showValue | parseStyle"></span>
      </span>
    </div>

</ng-container>


    <!-- 时间选择  -->
    <ng-container *ngSwitchCase="'datePicker'">

      <ng-container *ngIf="item.max && item.min">
        <ListItem DatePicker [showErrorToast]=false [extra]="item.valueN" [arrow]="'horizontal'"
          [maxDate]="item.maxDate ? item.maxDate: getDate(item.max,item)" [minDate]="item.minDate ? item.minDate :getDate(item.min,item)" [mode]="'datetime'"
          [ngModelOptions]="{standalone: true}" [(ngModel)]="item.defValue" [locale]="locale"
          (onOk)="datetime($event,item)" [className]="item.value ? 'select-checked' : 'select-default'">
          {{item.label}}

        </ListItem>

      </ng-container>
      <ng-container *ngIf="item.max ===  undefined && item.min">
        <ListItem DatePicker [showErrorToast]=false [extra]="item.valueN" [arrow]="'horizontal'"
          [minDate]="item.minDate ? item.minDate :getDate(item.min,item)"  [mode]="'datetime'" [locale]="locale"
          [ngModelOptions]="{standalone: true}" [(ngModel)]="item.defValue" (onOk)="datetime($event,item)"
          [className]="item.value ? 'select-checked' : 'select-default'">
          {{item.label}}

        </ListItem>

      </ng-container>
      <ng-container *ngIf="item.max  && item.min ===  undefined">
        <ListItem DatePicker [showErrorToast]=false [extra]="item.valueN" [arrow]="'horizontal'"
          [maxDate]="item.maxDate ? item.maxDate: getDate(item.max,item)"  [mode]="'datetime'" [locale]="locale"
          [ngModelOptions]="{standalone: true}" [(ngModel)]="item.defValue" (onOk)="datetime($event,item)"
          [className]="item.value ? 'select-checked' : 'select-default'">
          {{item.label}}

        </ListItem>

      </ng-container>
      <ng-container *ngIf="item.max ===  undefined  && item.min ===  undefined">
        <ListItem DatePicker [showErrorToast]=false [extra]="item.valueN" [arrow]="'horizontal'"
          [mode]="'datetime'" [locale]="locale" [ngModelOptions]="{standalone: true}" [(ngModel)]="item.defValue"
          (onOk)="datetime($event,item)" [className]="item.value ? 'select-checked' : 'select-default'">
          {{item.label}}

        </ListItem>

      </ng-container>

    </ng-container>

    <!-- 时间选择  [extra]="item.valueN" [arrow]="'horizontal'"-->
    <ng-container *ngSwitchCase="'datePlug'">

      <ng-container *ngIf="item.max && item.min">
        <ListItem DatePicker [showErrorToast]=false 
          [maxDate]="item.maxDate ? item.maxDate: getDate(item.max,item)" [minDate]="item.minDate ? item.minDate :getDate(item.min,item)" [mode]="item.mode"
          [ngModelOptions]="{standalone: true}" [(ngModel)]="item.defValue" [locale]="locale"
          (onOk)="datetime($event,item)" [className]="item.value ? 'select-checked' : 'select-default'"
          >
          <p class="date-plug" [ngStyle]="item.cssStyle | styleFilter" [ngClass]="{'border-none': item.lines === 'none', 'border-line': item.lines === 'inset', 'error-border' :errorChecked(item)}">
            <span class="time-label" [ngStyle]="item.labelCssStyle | styleFilter"  [innerHTML] = "item.label | parseStyle"></span>
            <span class="time-value" *ngIf="item.value" [ngStyle]="item.valueCssStyle | styleFilter">{{item.valueN}}</span>
            <span class="place-holder" [ngStyle]="item.placeholderCssStyle | styleFilter" *ngIf="!item.value">{{item.valueN}}</span>
            <ng-container *ngIf="item.endIcon; else noEndIcon">
              <img class="item-end-icon" src="{{item.endIcon}}" alt="">
            </ng-container>
            <ng-template #noEndIcon>
              <i class="select-span"></i>
            </ng-template>
          </p>

        </ListItem>

      </ng-container>
      <ng-container *ngIf="item.max ===  undefined && item.min">
        <ListItem DatePicker [showErrorToast]=false 
          [minDate]="item.minDate ? item.minDate: getDate(item.min,item)"  [mode]="item.mode" [locale]="locale"
          [ngModelOptions]="{standalone: true}" [(ngModel)]="item.defValue" (onOk)="datetime($event,item)"
          [className]="item.value ? 'select-checked' : 'select-default'"
          >
          <p class="date-plug" [ngStyle]="item.cssStyle | styleFilter" [ngClass]="{'border-none': item.lines === 'none', 'border-line': item.lines === 'inset', 'error-border' :errorChecked(item)}">
            <span class="time-label" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></span>
            <span class="time-value" *ngIf="item.value" [ngStyle]="item.valueCssStyle | styleFilter">{{item.valueN}}</span>
            <span class="place-holder" [ngStyle]="item.placeholderCssStyle | styleFilter" *ngIf="!item.value">{{item.valueN}}</span>
            <ng-container *ngIf="item.endIcon; else noEndIcon">
              <img class="item-end-icon" src="{{item.endIcon}}" alt="">
            </ng-container>
            <ng-template #noEndIcon>
              <i class="select-span"></i>
            </ng-template>
          </p>

        </ListItem>

      </ng-container>
      
      <ng-container *ngIf="item.max  && item.min ===  undefined">
        <ListItem DatePicker [showErrorToast]=false 
          [maxDate]="item.maxDate ? item.maxDate: getDate(item.max,item)"  [mode]="item.mode" [locale]="locale"
          [ngModelOptions]="{standalone: true}" [(ngModel)]="item.defValue" (onOk)="datetime($event,item)"
          [ngClass]="{'select-checked-righ': true}"
          [className]="item.value ? 'select-checked' : 'select-default'"
          >
          
          <p class="date-plug" [ngStyle]="item.cssStyle | styleFilter" [ngClass]="{'border-none': item.lines === 'none', 'border-line': item.lines === 'inset', 'error-border' :errorChecked(item)}">
            <span class="time-label" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></span>
            <span class="time-value" *ngIf="item.value" [ngStyle]="item.valueCssStyle | styleFilter">{{item.valueN}}</span>
            <span class="place-holder" [ngStyle]="item.placeholderCssStyle | styleFilter" *ngIf="!item.value">{{item.valueN}}</span>
            <ng-container *ngIf="item.endIcon; else noEndIcon">
              <img class="item-end-icon" src="{{item.endIcon}}" alt="">
            </ng-container>
            <ng-template #noEndIcon>
              <i class="select-span"></i>
            </ng-template>
          </p>
        </ListItem>

      </ng-container>
      <ng-container *ngIf="item.max ===  undefined  && item.min ===  undefined">
        <ListItem DatePicker [showErrorToast]=false 
          [mode]="item.mode" [locale]="locale" [ngModelOptions]="{standalone: true}" [(ngModel)]="item.defValue"
          (onOk)="datetime($event,item)" [className]="item.value ? 'select-checked' : 'select-default'"
          >
          <p class="date-plug" [ngStyle]="item.cssStyle | styleFilter" [ngClass]="{'border-none': item.lines === 'none', 'border-line': item.lines === 'inset', 'error-border' :errorChecked(item)}">
            <span class="time-label" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></span>
            <span class="time-value" *ngIf="item.value" [ngStyle]="item.valueCssStyle | styleFilter">{{item.valueN}}</span>
            <span class="place-holder" [ngStyle]="item.placeholderCssStyle | styleFilter" *ngIf="!item.value">{{item.valueN}}</span>
            <ng-container *ngIf="item.endIcon; else noEndIcon">
              <img class="item-end-icon" src="{{item.endIcon}}" alt="">
            </ng-container>
            <ng-template #noEndIcon>
              <i class="select-span"></i>
            </ng-template>
          </p>

        </ListItem>

      </ng-container>

    </ng-container>

    <!-- ion-datetime时间选择  -->
    <ng-container *ngSwitchCase="'ionDatetime'">

      <ng-container *ngIf="item.max && item.min">


        <div class="post-item post-item-div"  [ngStyle]="item.cssStyle | styleFilter" [ngClass]="{'border-none': item.lines === 'none'}">

          <ion-label *ngIf="item.label && item.label.length > 0" [ngStyle]="item.labelCssStyle | styleFilter"  [innerHTML]="item.label | parseStyle">
          </ion-label>

          <span class="input" *ngIf="item.showValue && item.showValue !== ''">{{item.valueN}}</span>
          <span class="input lightgrey"
            *ngIf="!item.showValue || item.showValue === ''">{{item.valueN}}</span>
          <i class="detail-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i>
        </div>
        <ion-datetime class="date-picker" style="height: 55px; margin-top: -55px; color: transparent;"
          [displayFormat]="item.mode" placeholder="选择" [pickerOptions]="customPickerOptions"
          (ionChange)="ionDateChange($event, item)" cancelText="取消" doneText="确定" [min]="item.min" [max]="item.max">
        </ion-datetime>


      </ng-container>
      <ng-container *ngIf="item.max ===  undefined && item.min">
        <div class="post-item post-item-div"  [ngClass]="{'border-none': item.lines === 'none', 'error-border' :errorChecked(item)}" [ngStyle]="item.cssStyle | styleFilter" >
        
          <ion-label *ngIf="item.label && item.label !==''" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML]="item.label | parseStyle"></ion-label>

          <span class="input" *ngIf="item.showValue && item.showValue !== ''">{{item.valueN}}</span>
          <span class="input lightgrey"
            *ngIf="!item.showValue || item.showValue === ''">{{item.valueN}}</span>
          <i class="detail-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i>
        </div>
        <ion-datetime class="date-picker" style="height: 55px; margin-top: -55px; color: transparent;"
          [displayFormat]="item.mode" placeholder="选择" [pickerOptions]="customPickerOptions"
          (ionChange)="ionDateChange($event, item)" cancelText="取消" doneText="确定" [min]="item.min"></ion-datetime>


      </ng-container>
      <ng-container *ngIf="item.max  && item.min ===  undefined">
        <div class="post-item post-item-div"  [ngClass]="{'border-none': item.lines === 'none', 'error-border' :errorChecked(item)}" [ngStyle]="item.cssStyle | styleFilter" >
        
          <ion-label *ngIf="item.label && item.label !==''" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML]="item.label | parseStyle"></ion-label>

          
          <span class="input " [ngClass]="{'lightgrey': !item.showValue || item.showValue === ''}">{{item.valueN}}</span>
          <i class="detail-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i>
        </div>
        <ion-datetime class="date-picker" style="height: 55px; margin-top: -55px; color: transparent;"
          [displayFormat]="item.mode" placeholder="选择" [pickerOptions]="customPickerOptions"
          (ionChange)="ionDateChange($event, item)" cancelText="取消" doneText="确定" [max]="item.max"></ion-datetime>

      </ng-container>
      <ng-container *ngIf="item.max ===  undefined  && item.min ===  undefined">
        <div class="post-item post-item-div"  [ngClass]="{'border-none': item.lines === 'none', 'error-border' :errorChecked(item)}" [ngStyle]="item.cssStyle | styleFilter" >
        
          <ion-label *ngIf="item.label && item.label !==''" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML]="item.label | parseStyle"></ion-label>

          <span class="input" *ngIf="item.showValue && item.showValue !== ''">{{item.valueN}}</span>
          <span class="input lightgrey"
            *ngIf="!item.showValue || item.showValue === ''">{{item.valueN}}</span>
          <i class="detail-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i>
        </div>
        <ion-datetime class="date-picker" style="height: 55px; margin-top: -55px; color: transparent;"
          [displayFormat]="item.mode" placeholder="选择" [pickerOptions]="customPickerOptions"
          (ionChange)="ionDateChange($event, item)" cancelText="取消" doneText="确定"></ion-datetime>

      </ng-container>

    </ng-container>

    <!-- 有图标边框的时间选择  -->
    <ng-container *ngSwitchCase="'datePickerLJ'">

      <div class="lj-post-item" [ngStyle]="item.cssStyle | styleFilter">
        <p class="lj-post-item-label" [ngStyle]="item.labelCssStyle | styleFilter" *ngIf="item.label && item.label.length > 0">
          {{item.label}}
        </p>

        <p class="lj-picker-bg" [ngStyle]="item.valueNCssStyle | styleFilter">
          <span *ngIf="item.value && item.value !== '' && item.value.length "
            [className]="(item.value && !item.disabled) ? 'select-checked' : 'lightgrey'"><i
              class="lj-picker-left-icon lj-picker-left-date-icon" [ngStyle]="item.leftIconCssStyle | styleFilter" ></i><i *ngIf="item.tips" [ngStyle]="item.tipsCssStyle | styleFilter">{{item.tips}}</i><i
              class="lj-item-value" [ngStyle]="item.valueCssStyle | styleFilter">{{item.valueN}}</i><i *ngIf="item.del && item.value"
              class="lj-picker-right-del" appDebounceClick (debounceClick)="deleteValue(item)"></i><i class="lj-right-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i></span>

          <span *ngIf="!item.value" [className]="(item.value && !item.disabled) ? 'select-checked' : 'lightgrey'"><i
              class="lj-picker-left-icon lj-picker-left-date-icon" [ngStyle]="item.leftIconCssStyle | styleFilter"></i><i *ngIf="item.tips" [ngStyle]="item.tipsCssStyle | styleFilter">{{item.tips}}</i><i
              class="lj-item-value" [ngStyle]="item.placeholderCssStyle | styleFilter">{{item.placeHolder}}</i><i *ngIf="item.del && item.value"
              class="lj-picker-right-del" appDebounceClick (debounceClick)="deleteValue(item)"></i><i class="lj-right-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i></span>

          <ng-container *ngIf="item.max && item.min">
            <ListItem DatePicker style="width: 100%;position: absolute;background: transparent;"
              [showErrorToast]=false [extra]="" [arrow]="'none'" [maxDate]="getDate(item.max,item)"
              [minDate]="getDate(item.min,item)" [mode]="item.mode" [ngModelOptions]="{standalone: true}"
              [(ngModel)]="item.defValue" [locale]="locale" (onOk)="datetime($event,item)"
              [className]="item.value ? 'select-checked' : 'select-default'">
            </ListItem>

          </ng-container>
          <ng-container *ngIf="item.max ===  undefined && item.min">
            <ListItem DatePicker style="width: 100%;position: absolute;background: transparent;"
              [showErrorToast]=false [extra]="" [arrow]="'none'" [minDate]="getDate(item.min,item)"
              [mode]="item.mode" [locale]="locale" [ngModelOptions]="{standalone: true}" [(ngModel)]="item.defValue"
              (onOk)="datetime($event,item)" [className]="item.value ? 'select-checked' : 'select-default'">

            </ListItem>

          </ng-container>
          <ng-container *ngIf="item.max  && item.min ===  undefined">
            <ListItem DatePicker style="width: 100%;position: absolute;background: transparent;"
              [showErrorToast]=false [extra]="" [arrow]="'none'" [maxDate]="getDate(item.max,item)"
              [mode]="item.mode" [locale]="locale" [ngModelOptions]="{standalone: true}" [(ngModel)]="item.defValue"
              (onOk)="datetime($event,item)" [className]="item.value ? 'select-checked' : 'select-default'">
            </ListItem>

          </ng-container>
          <ng-container *ngIf="item.max ===  undefined  && item.min ===  undefined">
            <ListItem DatePicker style="width: 100%;position: absolute;background: transparent;"
              [showErrorToast]=false [extra]="" [arrow]="'none'" [mode]="item.mode" [locale]="locale"
              [ngModelOptions]="{standalone: true}" [(ngModel)]="item.defValue" (onOk)="datetime($event,item)"
              [className]="item.value ? 'select-checked' : 'select-default'">
            </ListItem>

          </ng-container>
        </p>

      </div>

    </ng-container>
    <!-- 店铺证件 -->
    <ng-container *ngSwitchCase="'selectCertificates'">
      <div class="post-item post-item-div"  [ngClass]="{'border-none': item.lines === 'none' ,'error-border' :errorChecked(item)}" [ngStyle]="item.cssStyle | styleFilter" >
        <ion-label *ngIf="item.label && item.label.length > 0" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></ion-label>
        <span appDebounceClick (debounceClick)="openPage(item.link)" [className]="item.value ? 'select-checked' : 'lightgrey'" [ngStyle]="item.valueCssStyle | styleFilter">{{ item.showValue
        }}</span>
        <i class="detail-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i>
      </div>
      <div *ngIf="item.itemList && item.itemList.length" class="certificates-bg">
        <ng-container *ngFor="let it of item.itemList">
          <div class="certificates-img-bg" *ngIf="it.value && it.value.length > 1">
            <img src="{{it.value}}" alt="" class="certificates-img">
            <p class="certificates-label">{{it.label}}</p>
          </div>
        </ng-container>
        <p class="del-btn" *ngIf="item.delete" appDebounceClick (debounceClick)="deleteValue(item)">删除</p>
      </div>

    </ng-container>
    <!-- 选小区 -->
    <ng-container *ngSwitchCase="'showMapCommunity'">
  
        <div class="post-item post-item-div"  id="showSelectAddressModelId" [ngStyle]="item.cssStyle | styleFilter" [ngClass]="{'border-none': item.lines === 'none'}">
          
          <ion-label [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML]="item.label | parseStyle"></ion-label>
          <input type="text" [attr.placeholder]="item.placeHolder" 
            class="displayno">
          <span class="input" appDebounceClick (debounceClick)="openModalMapPage(item)"
            *ngIf="item.showValue && item.showValue !== ''" [ngStyle]="item.valueCssStyle |styleFilter">{{item.showValue}}</span>
          <span class="input lightgrey" [ngStyle]="item.placeholderCssStyle |styleFilter" appDebounceClick (debounceClick)="openModalMapPage(item)"
            *ngIf="!item.showValue || item.showValue === ''">{{item.placeHolder}}</span>
          <i class="detail-icon" [ngStyle]="item.endIconCssStyle |styleFilter"></i>
        </div>

    </ng-container>
    <!-- 解析地址 -->
    <ng-container *ngSwitchCase="'paresAddress'">
      <div class="pares-address-bg" [ngStyle]="item.cssStyle | styleFilter">
        <textarea class="pares-address" id="{{item.formKey}}" [ngStyle]="item.valueCssStyle | styleFilter" class="text-area" [rows]="item.showValue" [attr.placeholder]="item.placeHolder" (ionChange)="clearItemSpaces($event,item)" [(ngModel)]="item.value" [readonly]="item.disabled" >
            </textarea>
        <p [ngStyle]="item.defValueCssStyle | styleFilter " class="sure-address-btn" appDebounceClick (debounceClick)="paresAddress(item)">确定</p>
      </div>
    </ng-container>

      <!-- 选择地址  -->
      <ng-container *ngSwitchCase="'selectAddress'">
        <div class="get-addreess-bg selectAddreess" [ngStyle]="item.cssStyle | styleFilter">
          <div class="get-addreess-innner-bg"  [ngStyle]="item.itemListCssStyle | styleFilter" appDebounceClick (debounceClick)="changeAddress(item)">              
              <p class="addreess" *ngIf="item.label && item.label.length > 0" [ngStyle]="item.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></p>
              <img src="{{item.showData.icon}}" [ngStyle]="item.iconCssStyle | styleFilter" class="addreess-icon" alt=""
                *ngIf="item.showData?.icon && item.showData?.icon?.length > 0">
              <div class="addreess-content" [ngStyle]="item.placeholderCssStyle | styleFilter">
                <p class="addreess" [ngStyle]="item.valueCssStyle| styleFilter" *ngIf="item.showData?.label && !item.showData?.tips">{{item.showData?.label}}</p>
                <p class="addreess" [ngStyle]="item.showValueCssStyle| styleFilter" *ngIf="item.showData?.label && item.showData?.tips">{{item.showData?.label}}</p>
                <p class="addreess-name" [ngStyle]="item.tipsCssStyle | styleFilter" *ngIf="item.showData?.tips && item.showData?.tips?.length > 0">{{item.showData.tips}}</p>
              </div>
              <img class="detail-icon-new" [ngStyle]="item.imgCssStyle | styleFilter" [src]="item.showData?.arrowIcon"
                onerror="this.src='assets/icon/arrow_icon_right@3x.png'" />
          </div>
          
        </div>
      </ng-container>
      
      <!-- 营业时间段  -->
      <ng-container *ngSwitchCase="'timeSlot'">
        
        <div class="post-item post-item-div"  [ngStyle]="item.cssStyle | styleFilter" [ngClass]="{'border-none': item.lines === 'none'}">

          <ion-label *ngIf="item.label && item.label.length > 0" [ngStyle]="item.labelCssStyle | styleFilter"  [innerHTML]="item.label | parseStyle">
          </ion-label>
          <span DatePicker [mode]="(item.subHtmlObj[0].mode!=undefined ? item.subHtmlObj[0].mode : 'time')" [showErrorToast]=false [locale]="locale"(onOk)="timeSlot($event,item,0)" [maxDate]="getDate(item.subHtmlObj[0].max,item.subHtmlObj[0])" [minDate]="getDate(item.subHtmlObj[0].min,item.subHtmlObj[0])">
            
            <span class="start-time" [ngStyle]="item.subHtmlObj[0].valueCssStyle | styleFilter"
            *ngIf="item.subHtmlObj[0].value && item.subHtmlObj[0].value !== '' && item.subHtmlObj[0].value.length ">{{item.subHtmlObj[0].value}}</span>
          <span class="lightgrey start-time" [ngStyle]="item.subHtmlObj[0].valueCssStyle | styleFilter"
            *ngIf="!item.subHtmlObj[0].value ">{{item.subHtmlObj[0].placeHolder}}</span>
          </span>

          <span *ngIf="item.subHtmlObj.length > 1" class="link"></span>
          <span *ngIf="item.subHtmlObj.length > 1" DatePicker [mode]="item.subHtmlObj[0].mode" [showErrorToast]=false [locale]="locale" (onOk)="timeSlot($event,item,1)"   [maxDate]="getDate(item.subHtmlObj[1].max,item.subHtmlObj[1])" [minDate]="getDate(item.subHtmlObj[1].min,item.subHtmlObj[1])">
            <span class="start-time" [ngStyle]="item.subHtmlObj[1].valueCssStyle | styleFilter"
            *ngIf="item.subHtmlObj[1].value && item.subHtmlObj[1].value !== '' && item.subHtmlObj[1].value.length ">{{item.subHtmlObj[1].value}}</span>
          <span class="lightgrey  start-time" [ngStyle]="item.subHtmlObj[1].valueCssStyle | styleFilter"
            *ngIf="!item.subHtmlObj[1].value">{{item.subHtmlObj[1].placeHolder}}</span>
          </span>
        </div>

      </ng-container>
      <ng-container *ngSwitchCase="'sendRecAddress'">
        <div class="send-rec-address-bg" [ngStyle]="item.cssStyle | styleFilter">
          <div class="send-rec-row">
            <img class="send-rec-left-icon"  *ngIf="item.subHtmlObj[0].leftIcon" [ngStyle]="item.subHtmlObj[0].leftIconCssStyle | styleFilter" src="{{item.subHtmlObj[0].leftIcon}}" alt="">
            <div class="send-rec-right-up" >
                <div class="send-rec-right-up-left" appDebounceClick (debounceClick)="openModalMoreEditInfo(item.subHtmlObj[0])" [ngStyle]="item.subHtmlObj[0].cssStyle | styleFilter">
                  
            
                  <p class="send-rec-right-up-address" [ngStyle]="item.subHtmlObj[0].lableCssStyle | styleFilter">{{item.subHtmlObj[0].value ? item.subHtmlObj[0].value : item.subHtmlObj[0].label}}</p>
                  <p class="send-rec-right-up-name-phone" [ngClass]="{'place-holder': !item.subHtmlObj[0].showValue}" [ngStyle]="item.subHtmlObj[0].valueCssStyle | styleFilter">{{item.subHtmlObj[0].showValue1 ? item.subHtmlObj[0].showValue1 : item.subHtmlObj[0].placeHolder}}</p>
                </div>
                <div class="send-rec-right-up-line"  *ngIf="!item.disabled"></div>
                <div class="send-rec-right-up-right"  *ngIf="!item.disabled" appDebounceClick (debounceClick)="openPage(item.subHtmlObj[0].link,item.subHtmlObj[0])" [ngStyle]="item.subHtmlObj[0].extraCssStyle | styleFilter">
                  地址簿
                </div>
            </div>
          </div>
          
          <div class="send-rec-center-line"></div>
          <div class="send-rec-row">
            <img class="send-rec-left-icon" *ngIf="item.subHtmlObj[1].leftIcon" [ngStyle]="item.subHtmlObj[1].leftIconCssStyle | styleFilter" src="{{item.subHtmlObj[1].leftIcon}}" alt="">
            <div class="send-rec-right-down">
              <div class="send-rec-right-down-left" appDebounceClick (debounceClick)="openModalMoreEditInfo(item.subHtmlObj[1])" [ngStyle]="item.subHtmlObj[1].cssStyle | styleFilter">
                <p class="send-rec-right-down-address" [ngStyle]="item.subHtmlObj[1].labelCssStyle | styleFilter">{{item.subHtmlObj[1].value ? item.subHtmlObj[1].value : item.subHtmlObj[1].label}}</p>
                <p class="send-rec-right-down-name-phone"[ngClass]="{'place-holder': !item.subHtmlObj[1].showValue}" [ngStyle]="item.subHtmlObj[1].valueCssStyle | styleFilter">{{item.subHtmlObj[1].showValue1 ? item.subHtmlObj[1].showValue1 : item.subHtmlObj[1].placeHolder}}</p>
                
              </div>
              <div class="send-rec-right-down-line" *ngIf="!item.disabled"></div>
              <div class="send-rec-right-down-right"  *ngIf="!item.disabled" appDebounceClick (debounceClick)="openPage(item.subHtmlObj[1].link,item.subHtmlObj[1])" [ngStyle]="item.subHtmlObj[1].extraCssStyle | styleFilter">
                地址簿
              </div>  
            </div>
          </div>
        </div>
      </ng-container>

        <!-- 拖动排序-->
      <ng-container *ngSwitchCase="'dragSort'">
        <div class="drag-sort-bg" [ngStyle]="item?.cssStyle | styleFilter">
          <p *ngIf="item.label && item.label.length > 0" class="drag-sort-label" [ngStyle]="item?.labelCssStyle | styleFilter" [innerHTML] = "item.label | parseStyle"></p>
          <!-- 一级分类 -->
          <div class="drag-sort-res" *ngIf="item.itemList && item.itemList.length > 0 && item.value == 1" [ngStyle]="item?.valueNCssStyle | styleFilter">
            <div class="drag-sort-res-item" *ngFor="let it of item.itemList; let a = index" >
              <span [ngStyle]="item?.valueCssStyle | styleFilter" [ngClass]="{'drag-sort-res-item-s': item.showIndex == a}">{{it.label}}</span>
              <span  *ngIf="item.showIndex == a" class="show-line"></span>
            </div>
          </div>
          <!-- 二级分类 -->
          <div class="drag-sort-res-2" *ngIf="item.itemList && item.itemList.length > 0 && item.value == 2" [ngStyle]="item?.showValueCssStyle | styleFilter">
            <!-- 二级分类样式1 两行带图标 文字的 好货等 -->
            <ng-container *ngIf="item.textType == 1">
              <div class="drag-sort-res-item-2-bg">
                <div class="drag-sort-res-item-2" [ngStyle]="item?.valueNCssStyle | styleFilter" *ngFor="let it of item.itemList.slice(0,item.size)">
                  <img src="{{it.icon}}" alt="" class="drag-sort-res-2-img" [ngStyle]="item?.iconCssStyle | styleFilter">
                  <span class="drag-sort-res-2-label">{{it.label}}</span>
                </div>
              </div>
  
              <div class="drag-sort-res-item-2-bg">
                <div class="drag-sort-res-item-2" [ngStyle]="item?.valueNCssStyle | styleFilter" *ngFor="let it of item.itemList.slice(item.size,item.itemList.length)">
                  <img src="{{it.icon}}" alt="" class="drag-sort-res-2-img" [ngStyle]="item?.iconCssStyle | styleFilter">
                  <span class="drag-sort-res-2-label">{{it.label}}</span>
                </div>
              </div>
            </ng-container>
            
            
            <!-- 二级分类样式2 信息分类下  -->
            <ng-container *ngIf="item.textType == 2">

                <div class="drag-sort-res-item-2-bg">
                  <div class="drag-sort-res-item-2-2" [ngClass]="{'drag-sort-res-item-2-2-s': a === 0}" [ngStyle]="item?.valueNCssStyle | styleFilter" *ngFor="let it of item.itemList;let a = index">
                    {{it.label}}
                  </div>
                </div>
                <!-- 找客服 -->
                <div class="drag-sort-extra-bg">
                  <img class="drag-sort-extra-icon" src="{{item.endIcon}}" alt=""   [ngStyle]="item?.endIconCssStyle | styleFilter" >
                  <span class="drag-sort-extra" [ngStyle]="item?.extraCssStyle | styleFilter">{{item.extra}}</span>
                </div>

            </ng-container>
            <!-- 二级分类样式3 活动 -->
            <ng-container *ngIf="item.textType == 3">
              <ion-slides [options]="slideOpts" (ionSlidePrevStart)="getprevIndex()" (ionSlideNextStart)="getnextIndex()"
              #slideImg>
              <ion-slide *ngFor="let large of item.largeData, let i=index">
                <div class="drag-sort-res-item-3-bg" [ngStyle]="item.placeholderCssStyle|styleFilter">
                  <div class="drag-sort-res-item-3" [ngStyle]="item.valueNCssStyle|styleFilter"
                     *ngFor="let it of large"
                    appDebounceClick (debounceClick)="jumpToPage(item)">
                    <img class="link-item-img" [src]="it.icon" [ngStyle]="item.iconCssStyle|styleFilter" alt="icon" >
                    <span class="drag-sort-res-3-label">{{it.label}}</span>
                  </div>
                </div>
              </ion-slide>
            </ion-slides>
            <div class="drag-sort-sign">
            <span class="sign-page" *ngFor="let span of item.largeData, let i=index"[ngClass]="{'current-page':idx===i+1}"></span>
          </div>
            </ng-container>
            
            
          </div>
          <div class="drag-sep" *ngIf="!item.disabled" [ngStyle]="item?.sepCssStyle | styleFilter"></div>
          <div class="drag-sort-area-bg">
            <ion-reorder-group *ngIf="!item.disabled" [disabled]="false" (ionItemReorder)="reorder($event, item)" >
            
              <div  class="drag-item" *ngFor="let it of item.itemList,let i=index" >
                <span class="drag-item-label">{{it.label}}</span>
                <img src="{{item.icon}}" class="drag-item-icon" alt="">
                <div class="drag-tips" *ngIf="i === 0 && item.drag != 1" [ngStyle]="item?.tipsCssStyle | styleFilter" >
                  <div class="drag-tips-content">
                    {{item.tips}}
                  </div>
                  <div class="drag-tips-ang"></div>
                </div>
                <ion-reorder class="drag" slot="end"><ion-icon></ion-icon></ion-reorder>
                <div class="drag-item-bottom-line">.</div>
              </div>
            </ion-reorder-group>
          </div>
          

        </div>
      </ng-container> 
      
      <!-- checkBox  -->
      <ng-container *ngSwitchCase="'checkBox'">
      <div class="check-box-bg" appDebounceClick (debounceClick)="changeItemobjValidator(item,'checkBox')" [ngStyle]="item.cssStyle | styleFilter">
        <div>
          <p class="check-box-label-bg">
            <span class="check-box-tips" *ngIf="item.tips" [ngStyle]="item.tipsCssStyle | styleFilter">{{item.tips}}</span>
            <span class="check-box-label" *ngIf="item.label" [ngStyle]="item.labelCssStyle | styleFilter">{{item.label}}</span>
          </p>
          <p class="check-box-show-value" *ngIf="item.showValue" [ngStyle]="item.showValueCssStyle | styleFilter">{{item.showValue}}</p>
        </div>
        <ng-container *ngIf="appTypeCustom==='LJ'">
          <ng-container *ngIf="item.value === '1'">
            <img src="assets/icon/quick_release_checked_lj@3x.png" class="release-check" [ngStyle]="item.endIconCssStyle | styleFilter">
          </ng-container>
        </ng-container>
        <ng-container *ngIf="appTypeCustom!=='LJ'">
          <ng-container *ngIf="item.value === '1'">
            <img src="assets/icon/quick_release_checked@3x.png" class="release-check" [ngStyle]="item.endIconCssStyle | styleFilter">
          </ng-container>
        </ng-container>
        <ng-container *ngIf="item.value === '0'">
          <img src="assets/icon/release_icon_unchecked@3x.png" class="release-uncheck" [ngStyle]="item.endIconCssStyle | styleFilter">
        </ng-container>
        <p class="check-box-extra" *ngIf="item.extra" [ngStyle]="item.extraCssStyle | styleFilter">{{item.extra}}</p>
      </div>
      </ng-container>

      <!-- singleColumnSelectLJ 底部弹窗-->
      <ng-container *ngSwitchCase="'singleColumnSelectLJ'">
        <div class="lj-post-item"  [ngStyle]="item.cssStyle | styleFilter">
          <p class="lj-post-item-label"  [ngStyle]="item.labelCssStyle | styleFilter" *ngIf="item.label && item.label.length > 0">
            {{item.label}}
          </p>

          <p class="lj-picker-bg" appDebounceClick (debounceClick)="showActionSheet(item)">
            <span *ngIf="item.showValue"
              [className]="(item.value && !item.disabled) ? 'select-checked' : 'lightgrey'"><i
                class="lj-picker-left-icon" [ngStyle]="item.leftIconCssStyle | styleFilter"></i><i class="lj-item-value"  [ngStyle]="item.showValueCssStyle | styleFilter">{{item.showValue}}</i><i
                *ngIf="item.del && item.value" class="lj-picker-right-del" appDebounceClick (debounceClick)="deleteValue(item)"></i><i
                class="lj-right-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i></span>

            <span *ngIf="!item.value" [className]="(item.value && !item.disabled) ? 'select-checked' : 'lightgrey'"><i
                class="lj-picker-left-icon" [ngStyle]="item.leftIconCssStyle | styleFilter"></i><i class="lj-item-value" [ngStyle]="item.placeholderCssStyle | styleFilter">{{item.placeHolder}}</i><i
                *ngIf="item.del && item.value" class="lj-picker-right-del" appDebounceClick (debounceClick)="deleteValue(item)"></i><i
                class="lj-right-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i></span>

          </p>

        </div>
      </ng-container>
      
</ng-container>
        

<!-- 
  <app-text-input [item]="item" (output) = "outputTextInput($event)"> </app-text-input>
  <app-text-input [item]="it" (output) = "outputTextInput($event)"> </app-text-input>
  [ngStyle]="item.endIconCssStyle | styleFilter"
  [ngStyle]="item.valueCssStyle | styleFilter" 
  [innerHTML]="item.showValue | parseStyle"
  [ngStyle]="item.labelCssStyle | styleFilter" 
  [innerHTML] = "item.label | parseStyle"

  post-item-div border-none

<div class="post-item post-item-div"  [ngStyle]="item.cssStyle | styleFilter" [ngClass]="{'border-none': item.lines === 'none'}">

<ion-label *ngIf="item.label && item.label.length > 0" [ngStyle]="item.labelCssStyle | styleFilter"  [innerHTML]="item.label | parseStyle">
</ion-label>


</div>

<div class="post-item post-item-div"  [ngStyle]="it.cssStyle | styleFilter" [ngClass]="{'border-none': it.lines === 'none'}">
                    
<ion-label [ngStyle]="it.labelCssStyle | styleFilter" [innerHTML]="it.label | parseStyle"></ion-label>



<div class="post-item post-item-div"  [ngStyle]="i.cssStyle | styleFilter" [ngClass]="{'border-none': i.lines === 'none'}">
                    
<ion-label [ngStyle]="i.labelCssStyle | styleFilter" [innerHTML]="i.label | parseStyle"></ion-label>

              <i class="detail-icon" [ngStyle]="item.subHtmlObj[0].endIconCssStyle | styleFilter"></i>


              <i class="detail-icon" [ngStyle]="it.endIconCssStyle | styleFilter"></i>

              <i class="detail-icon" [ngStyle]="item.endIconCssStyle | styleFilter"></i>

 -->





